1. Field of the Invention
The present invention generally relates to a method and apparatus for accessing services of a device in order to control the functionality of the device.
2. Description of the Related Art
There are many devices that include a number of components whose functionality can be controlled by a user using input devices and a user interfaces displayed on displays of the devices. Typically, specialized programs may be configured to provide user interfaces on the display related to certain aspects of the device only, and may use service applications to control the functionality of certain aspects of the device. Each of these service applications may be configured to use system calls of an operating system running on the device in order to interact with the components of the device, thereby controlling its functionality. For example, a telephony device may include a specialized program for providing a user interface relating to a telephone call, which may use a telephony services application to control a telephone call, and/or may include a specialized program for providing a user interface relating to a list of contacts and a contacts services application for controlling a list of contacts stored in the telephony device, etc. Other devices include a television, set-top box, media player, e-book reader, or digital camera.
These devices may each include an Internet browser that provides access to Internet websites. The Internet browser may also use system calls of the operating system in order to interact with the components of the device. For example, the Internet browser may use a network interface of the telephony device to communicate with Internet websites via a communications network and then display content retrieved from the Internet browser website on the display of the device.
The specialized programs that provide user interfaces for controlling functions of such devices may typically be configured to use specific methods for accessing the service applications of the devices and may not be transferable for use in other devices. This causes a low degree of separation between the specialized programs and the service applications, which makes it difficult to separate the design of the user interface for a device from the design of the programs for controlling functions of the device. Additionally, further specialized means for accessing the service applications must be developed if the device is to be controlled remotely, for example, using a computer or another device. Consequently, it is difficult and costly to develop means for remotely controlling a device.